package cn.cms.model;

import java.util.Date;

public interface Schedulable {

    Integer IS_SCHEDULE  = 1;
    Integer ISNOT_SCHEDULE = 0;
    Integer SCHEDULE_TYPE_FIXED = 0;
    Integer SCHEDULE_TYPE_REPEATED = 1;
    Integer SCHEDULE_REPEAT_TYPE_DAILY = 0;
    Integer SCHEDULE_REPEAT_TYPE_WEEKLY = 1;
    Integer SCHEDULE_REPEAT_TYPE_MONTHLY = 2;

    public String getSchedulableId();

    public String getName();

    public Integer getSchedule();

    public void setSchedule(Integer schedule);

    public Integer getScheduleType();

    public void setScheduleType(Integer scheduleType);

    public Date getScheduleBeginTime();

    public void setScheduleBeginTime(Date scheduleBeginTime);

    public Date getScheduleEndTime();

    public void setScheduleEndTime(Date scheduleEndTime);

    public Integer getScheduleRepeatType();

    public void setScheduleRepeatType(Integer scheduleRepeatType);

    public Integer getScheduleDuration();

    public void setScheduleDuration(Integer scheduleDuration);

    public Date getScheduleRepeatBeginTime();

    public Date getScheduleRepeatEndTime();

    public void setScheduleRepeatBeginTime(Date scheduleRepeatBeginTime);

    public void setScheduleRepeatEndTime(Date scheduleRepeatBeginTime);

    public String getScheduleRepeatWeekPattern();

    public void setScheduleRepeatWeekPattern(String scheduleRepeatWeekPattern);

    public String getScheduleRepeatMonthPattern();

    public void setScheduleRepeatMonthPattern(String scheduleRepeatMonthPattern);
}
